[RFC] Msn-prpl refactor

Jorge Villaseñor salinasv at gmail.com
Wed Jun 2 20:17:21 EDT 2010

2010/6/2 Allan Clark <allanc at chickenandporn.com>:
> Hi;
> SLP -- Service Location Protocol?
> That's the top 20 hits on "SLP", but the WIki Page you point us to has no
> such definition, and seems unrelated.
>>> "SLP stands for ... and is a ... "
> Allan

SLP stands for SIP Like Protocol and the way MSNP send messages.

You may like to take a look at this:

> 2010/6/2 Jorge Villaseñor <salinasv at gmail.com>
>> As you have seen, I have done some cleanup on the msnp-tlc branch, I
>> wanted to do this before start rewriting/refactoring stuff. This way I
>> can get a better idea of how modules interact (or should).
>> This is a draft idea and want you to review it before start coding it.
>> (copied to  http://developer.pidgin.im/wiki/SlpArchitecture so it can
>> be updated there)
>> Almost every data the msn protocol transmit go in form of an SLP
>> Message and is sent using SLP. There are two available methods to
>> transmit this data being trough the switchboard and direct connection.
>> 1 Architecture
>> There will be a self contained stack that makes transparent to every
>> other module about the details of SLP and SLP messages. The proposed
>> architecture exposes a single SLP API on top of the stack and pass it
>> to the lower layers as needed: SLP API-> SlpCall -> SlpLink ->
>> Network. Where SlpLink is an abstraction of the possible transaction
>> methods, each defined in the DirectConn and SBConn modules.
>> 1.1 SLP API (WIP)
>> This API must abstract everything others modules will need from SLP
>> transactions. This will be the one that creates the SlpCall for any
>> new transaction as needed
>> 1.2 SlpCall
>> Represent an SLP transaction creating the messages as needed and
>> managing most of the msg specific management (what to do on each
>> response).
>> 1.3 SlpLink
>> Abstract a Connection. Try DirectConn and fallback to SBConn if the
>> former fails. This module is also responsible to get the data that
>> must be sent from files or write down the received data.
>> 1.4 Conn
>> This modules must expose a common interface so they can be easily
>> attached to SlpCall and Netwrok interfaces.
>> 2 Implementation:
>> * SBConn and DirectConn can have a conn_ops structure which will be
>> called by the SlpLink module,
>> * SBConnmust be extracted from the actual Switchboard module.
>> * Use an MsnTable in SlpCall to manage the SLP protocol callbacks.
>> --
>> Masca
>> _______________________________________________
>> Devel mailing list
>> Devel at pidgin.im
>> http://pidgin.im/cgi-bin/mailman/listinfo/devel
> --
> allanc at chickenandporn.com  "金鱼" http://linkedin.com/in/goldfish
> please, no proprietary attachments (http://tinyurl.com/cbgq)


Y echas a andar por la ciudad, atraviesas un nuevo canal,
huyes del rojo y azul del neón, vas en busca de algo que huela distinto al amor.

More information about the Devel mailing list