Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-23194

XMLRPC handling in blocks

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Deferred
    • Affects Version/s: 1.9.9
    • Fix Version/s: None
    • Component/s: MNet
    • Labels:
      None
    • Affected Branches:
      MOODLE_19_STABLE

      Description

      Seems to be quite trivial request, and I didn't see anything related in my searches,

      Is there an absolutely mandatory reason for blocks not having XMLRPC routing handled in mnet/xmlrpc/server.php receiver ?

      We are working with big success for 3 years now with the following patch :

      // PATCH : Add RPC support to blocks
      ////////////////////////////////////// STRICT BLOCKS/*
      } elseif ($callstack[0] == 'blocks') {
      list($base, $block, $filename, $functionname) = $callstack;
      $includefile = '/blocks/'.$block.'/rpclib.php';
      $response = mnet_server_invoke_method($includefile, $functionname, $method, $payload);
      $response = mnet_server_prepare_response($response);
      echo $response;
      // /PATCH

      in the method routing function [ mnet_server_dispatch($payload) ]

      This support allows blocks developpers to add interesting side-apps, and developping easy to integrate Moodle custom administration add-ons as blocks.

      Resolving such miss could allow many side integrations to be added without core impact, and in a more publishable way than "local" customisation proposals....

      => blocks/vmoodle Moodle virtualisation solution
      => blocks/publishflow Across Moodle course delivery infrastructure solution
      => blocks/file_manager (enhanced version) for MNET based bookmark capturing

      and so on....

      Cheers.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: