isolationserver/isoserver/inc/isoim.h
changeset 10 59927b2d3b75
parent 0 d0f3a028347a
--- a/isolationserver/isoserver/inc/isoim.h	Tue Feb 02 01:10:06 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,264 +0,0 @@
-/*
-* ============================================================================
-*  Name        : isoim.h
-*  Part of     : isolation server instant messaing componenet.
-*  Version     : %version: 14 %
-*
-*  Copyright © 2007-2008 Nokia.  All rights reserved.
-*  All rights reserved.
-*  Redistribution and use in source and binary forms, with or without modification, 
-*  are permitted provided that the following conditions are met:
-*  Redistributions of source code must retain the above copyright notice, this list 
-*  of conditions and the following disclaimer.Redistributions in binary form must 
-*  reproduce the above copyright notice, this list of conditions and the following 
-*  disclaimer in the documentation and/or other materials provided with the distribution.
-*  Neither the name of the Nokia Corporation nor the names of its contributors may be used 
-*  to endorse or promote products derived from this software without specific prior written 
-*  permission.
-*  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
-*  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 
-*  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 
-*  SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
-*  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 
-*  OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
-*  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
-*  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 
-*  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-* ============================================================================
-* Template version: 1.0
-*/
-
-/*!
-* /def To avoid multiple inclusion of header
-*/
-
-#ifndef _ISOIM_H_
-#define _ISOIM_H_
-
-#include <glib.h>
-#include <gtypes.h>
-
-#include "isoservermain.h"
-#include "msg_enums.h"
-
-/*! /file 
- *	Interfaces for the send / recieve of messages.
- *	client anywhere in the documentation refers to anyone
- *	using the isoserver
- */
-
-/*!	/typedef struct send_msg_struct typedefed to send_msg_struct. 
- */
-typedef struct send_msg_struct send_msg_struct;
-
-/*! /struct send_msg_struct isoim.h 
- * 	/brief This struct is used to pass multiple pointers as userdata to callbacks
- *
- * 	/var hdr_req header request
- *	/var msg character string(message)	
- */
-struct send_msg_struct
-	{
-	message_hdr_req* hdr_req;
-	char *msg;
-	};
-
-/*!	/typedef struct _Received_UserData typedefed to Received_UserData. 
- */
-typedef struct _Received_UserData Received_UserData;
-
-/*! /struct Received_UserData isoim.h 
- * 	/brief This struct is used to pass multiple pointers as userdata to callbacks
- *
- * 	/var message_body message
- *	/var proxy proxy This is used for acknowledging the recieved message
- *	/var message_id This is used for acknowledging the recieved message
- */
-struct _Received_UserData
-	{
-	gchar  *message_body;
-	DBusGProxy *proxy;
-	guint   message_id;
-	};
-	
-/*!	/typedef struct send_error_struct typedefed to send_error_struct. 
- */
-typedef struct send_error_struct send_error_struct;
-
-/*! /struct send_error_struct isoim.h
- *	/brief This struct is used to pass multiple pointers as userdata to callbacks
- *	
- *	/var hdr_resp response header 
- *	/var msg_type
- *	/var timestamp
- *	/var msg_body
- */
-struct send_error_struct
-	{
-	message_hdr_resp hdr_resp;
-	guint msg_type;
-	guint timestamp;
-	gchar* msg_body;	
-	};
-	
-/*!	/brief requests the handles for the contacts to which message should be sent.
- *	request_handles_cb is registered as a callback. necessary data to be sent is 
- *	passed as userdata 
- *
- * 	/param msghdr request header that will be passed back to client
- * 	/param contact_id all contacts
- * 	/param message
- * 	/param no_cntcts  no. of contacts the msg shld be sent to
- * 	/return : error code on failure, 0 on success
- */
-void send_message( send_msg_struct* msg_hdr, const gchar **contact_id ) ;
-
-/*!	/brief handles for contacts are recieved and text channel created (if already
- *	there same is used) message is sent to those contacts.
- *	
- * 	
- * 	/param proxy unused
- * 	/param handles contact handles
- * 	/param error error if any in getting the handles for contact 
- * 	/param userdata Has request header and message to be sent to reciever
- *	The request header is used for mapping of response to correct request
- *
- */
-void request_handles_cb( DBusGProxy *proxy, GArray *handles, GError* error, 
-			gpointer userdata ) ;
-
-
-/*!	/brief parse the params for send and validates them
- * 
- * 	/param aMsgBuffer message buffer to be parsed
- * 	/param aContactId pointer to an array of strings, After this function this 
- *	arg wil have the contacts to which message should be sent to
- * 	/param aSendMsg message to be sent
- * 	/param len : msg_len no. of bytes in aMsgBuffer
- * 	/param contact_count : no. of contacts
- * 	/return returns error code on failure, or 0
- */
-int parse_for_send( gchar* aMsgBuffer, gchar*** aContactId, 
-	gchar** aSendMsg, gint msg_len, gint* contact_count ) ;
-	
-
-/*!	/brief calls parse_for_send to parse the parameters, and calls 
- *	send_message for sending the message
- * 
- * 	/param buf : message buffer to be parsed
- * 	/param len : msg_len no. of bytes in msg_buf
- *
- * 	/return gint : parse error code if any
- */
-int action_parse_send( gchar* buf, gint msg_len ) ;
-
-/*!	/brief Function to check if the channel is already present in the maintained hash
- * 	text_channels_find_func. 
- *
- * 	/param key unused
- * 	/param text_channel hash table element
- * 	/param contact_handle to be searched item 
- * 	/return boolean 
- */
-gboolean text_channels_find_func(	gchar *key,
-									TpChan *text_channel,
-									guint *contact_handle );
-									
-/*! /brief Once the send request is sent to n/w server this callback is called
- * 
- * 	/param proxy unused
- * 	/param error n/w error if any
- * 	/param userdata message header from which a response is formed
- * 	/return void
- */
-void sendreply_cb( DBusGProxy *proxy, GError *error, gpointer userdata ) ;
-
-/*!	/brief This function is called by tg to as a response to request for the 
- *	handles from the text channel. If there is no error, sent message( 
- *	which has failed ) with its deatils	is then sent to client
- * 
- *	/param proxy unused
- *  /param handles_names contac names (sender name)
- *  /param error error if any
- *  /param userdata send_error_struct
- *  /return void
- */								
-static void inspect_handles_for_error_cb( DBusGProxy *proxy,char **handles_names,
-				 GError *error, gpointer userdata );
-
-/*!	/brief This function on registered for "senderror" signal is called when the message 
- * 	sending is failed. Calls tp_conn_inspect_handles_async to get the contact name 
- *	from text channel
- *
- * 	/param proxy : unused
- * 	/param error : error code
- * 	/param timestamp : sent to inspect_handles_for_error_cb thru' send_error_struct
- * 	/param message_type : sent to inspect_handles_for_error_cb thru' send_error_struct
- * 	/param message_body : sent to inspect_handles_for_error_cb thru' send_error_struct
- * 	/param user_data text_chan from where to get the contatc name of reciepien
- * 	/return void
- */
-static void senderror_cb (  DBusGProxy *proxy,
-								guint            error,
-							   	guint            timestamp,
-							    guint            message_type,
-							    gchar           *message_body,
-							    gpointer		user_data );
-			
-/*!	/brief called as a callback to acknowledge the msg ack. 
- * 
- * 	/param proxy unused 
- * 	/param error error if any
- * 	/param userdata unused
- * 	/return void
- */
-void msg_ack_pending_cb( DBusGProxy *proxy, GError *error, gpointer userdata ) ;
-
-/*!	/brief This function is a callback for to get the contact name from handles.
- *	This function acknowledges the recieved message and send that to client(adap)
- * 	
- * 	/param proxy unused
- * 	/param handles_names 2D array of message sender(one contact ended with a NULL string)
- * 	/param error error if any
- *  /param userdata Received_UserData that has message body, response header etc.,
- *  /return void
- */
-static void getting_sender_cb( DBusGProxy *proxy,char **handles_names, 
-		GError *error, gpointer userdata ) ;
-
-/*!	/brief when a message is recieved this function is called by 
- * 	telepathygabble(by emitting signal). This function then requests tg 
- *	to get the contact names corresponding to handles.
- * 
- * 	/param proxy sent to getting_sender_cb as param in userdata
- * 	/param timestamp unused
- * 	/param handles_names
- * 	/param message_type unused
- * 	/param message_flags unused
- * 	/param message_body recieved message
- * 	/param userdata unused
- */
-void receivedMessage_cb (  DBusGProxy *proxy,
-								guint            message_id,
-							   	guint            timestamp,
-							    guint            from_handle,
-							    guint            message_type,
-							    guint            message_flags,
-							    gchar           *message_body,
-							    gpointer		user_data );
-/*!	/brief whenevr a new channel handler for text is created, this function is called. This 
- *	function also registers that channel for Received and SendError signals. Also the pending
- *	messages are also retrieved in this function
- * 
- * 	/param tp_chan new channel created
- */
-void text_channel_init  ( TpChan   *text_chan  );
-
-/*!	/brief called by getting_sender_cb to send the recieved message to client
- * 
- * 	/param msg message recieved
- * 	/param sender message from whom recieved
- */
-int  send_message_to_client( const gchar *msg , const gchar *sender);	
-							
-#endif
\ No newline at end of file