An apparatus comprising: a first plugin module configured to digitally communicate with a service module (430a; 430b) according to a first custom protocol; the apparatus characterised by further comprising: a second plugin module configured to digitally communicate with a messaging server according to a second custom protocol; an assistant server processing block configured to transmit to the first or second plugin module (425a; 425b) a digital message formatted according to a universal protocol known as semantic information interchange language, SIIL; wherein the first and second plugin modules (425a; 425b) are further configured to automate translation between digital messages formatted in SIIL and digital messages formatted according to their respective first or second custom protocol; the assistant server processing block further comprising a command inference block configured to generate a digital command message derived from a message application by: receiving a plurality of input messages corresponding to input from a plurality of users to the messaging application, the plurality of users engaged in a messaging session, wherein the plurality of input messages is formatted in SIIL; receiving a context of the plurality of input messages; processing the plurality of input messages and the received context to generate an actual command according to adaptive learning techniques, the actual command comprising a request or a query; and encapsulating the actual command in the digital command message, the digital command message being formatted in SIIL; wherein the assistant server processing block is further configured to: transmit the digital command message to the first plugin module for transmission to the service module; receive from the first plugin module a SIIL service message comprising a response to the request or query transmitted in the digital command message; formulate the received SIIL service message as a command-input SIIL message; and transmit the command-input SIIL message to the second plugin module for the messaging server to update the messaging session with a message comprising the response to the request or query. the apparatus characterised by further comprising: a second plugin module configured to digitally communicate with a messaging server according to a second custom protocol; an assistant server processing block configured to transmit to the first or second plugin module (425a; 425b) a digital message formatted according to a universal protocol known as semantic information interchange language, SIIL; wherein the first and second plugin modules (425a; 425b) are further configured to automate translation between digital messages formatted in SIIL and digital messages formatted according to their respective first or second custom protocol; the assistant server processing block further comprising a command inference block configured to generate a digital command message derived from a message application by: receiving a plurality of input messages corresponding to input from a plurality of users to the messaging application, the plurality of users engaged in a messaging session, wherein the plurality of input messages is formatted in SIIL; receiving a context of the plurality of input messages; processing the plurality of input messages and the received context to generate an actual command according to adaptive learning techniques, the actual command comprising a request or a query; and encapsulating the actual command in the digital command message, the digital command message being formatted in SIIL; receiving a plurality of input messages corresponding to input from a plurality of users to the messaging application, the plurality of users engaged in a messaging session, wherein the plurality of input messages is formatted in SIIL; receiving a context of the plurality of input messages; processing the plurality of input messages and the received context to generate an actual command according to adaptive learning techniques, the actual command comprising a request or a query; and encapsulating the actual command in the digital command message, the digital command message being formatted in SIIL; wherein the assistant server processing block is further configured to: transmit the digital command message to the first plugin module for transmission to the service module; receive from the first plugin module a SIIL service message comprising a response to the request or query transmitted in the digital command message; formulate the received SIIL service message as a command-input SIIL message; transmit the digital command message to the first plugin module for transmission to the service module; receive from the first plugin module a SIIL service message comprising a response to the request or query transmitted in the digital command message; formulate the received SIIL service message as a command-input SIIL message; and transmit the command-input SIIL message to the second plugin module for the messaging server to update the messaging session with a message comprising the response to the request or query.