Conversation between 2 clients

Apologies if this is a stupid question, but my mind has gone completely blank!
I'm trying to write a program allowing 2 clients to connect to a server and exchange messages with one another. My problem is that I can't figure out how to allow the 2 clients to link up with each other once they've connected to the server.
I've been looking at examples, but they all seem to refer to chat room applications or multiple clients communicating with the server.
I'd really appreciate any thoughts on this,
Compassion

Two solutions :
1. One client provides his own hostname-port to the server that forward it to the client, then this client open this socket with an accept, and the second client connect himself to the first client. You have then a direct peer to peer connection. This solution is performent, but you might have firewall issues.
2. Your server accept the two client connections and, once the two client have asked to connect themself together, the server launch a thread that read on each connection and write directly everithing he read to the other connection.

Similar Messages

  • Questions on scripts, tables & transfer objects between clients.

    1. In script, how to use the same print program for two different layouts? with procedure.!
    2. Why cant sapscripts be client independent.?
    3. Want to maintain a table in dev server and if i update the data, it should simultanously update in Quality and Production servers. How? please explain in details.
    4. How to transfer object between clients.? explain.
    Points will be promptly rewarded for HELPFULL answers.!

    Hi!
    3. With SE01, you can create a transport request for all table entries.
    SE01 - Create button - Workbench request - Give description and save
    Select the created request and click on Display object list.
    Click on Display - Change button
    Insert line button
    ProgID: R3TR
    Object: TABU
    Object name: Z_YOUR_TABLE
    Double click on the table name
    Insert line
    Key: *
    Save everything
    Release the transport in SE10 transaction and transport with STMS transaction.
    Regards
    Tamá

  • Can I have a Face Time conversation between two Apple devices using the same Apple ID?

    Can I have a Face Time conversation between two Apple devices using the same Apple ID?

    Yes, you can, but the two devices can't have the same e mail address associated with both.  Each, device needs its own unique e mail ADR.  In your case, the iPod can call your iPhone if you use the phone number, but the iPhone can not call your iPod because it must use the e mail address, and if the email address is the same on both, the iPhone will think it's calling itself, so the call will not go through.

  • Can we share the same Business Action between clients?

    Hi All,
    I have a scenario wherein we have two Remote Trading Partners (say Remote1 and Remote2). Both these clients send EDI-850 documents and expect EDI-997.
    So,
    1. I first go to the Protocols Tab.
    2. Create a Business Action (Process_850) and Follow the Wizard for the details.
    In the process i create
    a. Process Protocol
    b. Document Protocol
    c. Exchange Protocol
    Now for the second client also sends us the EDI-850 document. So can I reuse all the above created objects and just have two Agreements one with Remote1 using the same Business Action (Process_850) but different Delivery Channels
    Or should i be creating different Business Actions for the different Clients?
    If i indeed have to create diff business actions then can i reuse the Document Protocol between clients? It does allow you to select and existing one.
    Finally, If i understand this correct, We create a Business Action and hence the Document Protocol. We set the default values of the Document Protocol Parameters in here and when we create Trading Partners we override these (Application Sender Code, etc.). In a way we are saying that Process_850 is a business action that is processing 850 documents. 850 being a template and the document parameters are the replacements done on 850 when it is sent by Sender we have say Acme and when it is receiver we have GlobalChips.

    If it is for two diffrent trading partner you can share the same business action.

  • What's the difference between client combo and server combo? Also, what would happen if I install both?

    what's the difference between client combo and server combo? Also, what would happen if I install both?

    One is for the base version of the Mac OS, the other is for the Server version. You can only install the one that matches your system.

  • Conversion between Cordinates

    I am using TextLayout for rendering a unicode text.and calculated the bounding boxes of each characters in textlayout
    . Font size is set as 12 and for the same Text i am also generating image of it and then i found out the bounding boxes for each characters with the help of already available tool.The tool chooses bottom -left as the image origin and calculate the coordinates based on that.Obviously these two coordinates will differ.Can any one please suggest a method for conversion between coordinates of textlayout and that of image coordinates mentioned above.

    I am using TextLayout for rendering a unicode text.and calculated the bounding boxes of each characters in textlayout
    . Font size is set as 12 and for the same Text i am also generating image of it and then i found out the bounding boxes for each characters with the help of already available tool.The tool chooses bottom -left as the image origin and calculate the coordinates based on that.Obviously these two coordinates will differ.Can any one please suggest a method for conversion between coordinates of textlayout and that of image coordinates mentioned above.

  • Precision loss - conversions between exact values and floating point values

    Hi!
    I read this in your SQL Reference manual, but I don't quite get it.
    Conversions between exact numeric values (TT_TINYINT, TT_SMALLINT, TT_INTEGER, TT_BIGINT, NUMBER) and floating-point values (BINARY_FLOAT, BINARY_DOUBLE) can be inexact because the exact numeric values use decimal precision whereas the floating-point numbers use binary precision.
    Could you please give two examples: one where a TT_TINYINT is converted to a BINARY_DOUBLE and one when a TT_BIGINT is converted into a DOUBLE, both cases give examples on lost precision? This would be very helpful.
    Thanks!
    Sune

    chokpa wrote:
    Public Example (float... values){}
    new Example (1, 1e2, 3.0, 4.754);It accepts it if I just use 1,2,3,4 as the values being passed in, but doesn't like it if I use actual float values.Those are double literals, try
    new Example (1f, 1e2f, 3.0f, 4.754f);

  • What exactly is the diff between client dependant and client independant te

    Hi gurus,
    What is the diff between client independant and client dependant term.. I initially had a confusion related to client independant and client dependant Transport requests, where else are these words applicable, do they apply to data as well, if so how? any links to help me understand the difference..
    regards,
    kishore

    Hi Kishore,
    Client Independant: These objects are not specific to any client. And it is universal which can be viewed,changed across the clients.
    Client Dependant: These are the objects can be viewed, changed for the client for which it has been assigned. Other clients do not have access on these objects.
    In SAP, all objects are finally stored as tables. "Mandt" is key field which determines whether the object is client dependant or not.
    Client Independant transport requests will make the transported objects available across the clients. and Client dependent transport request make the objects available only for the client mentioned by field "Mandt"
    Regards,
    Dinesh D

  • Difference between client system and logical system

    Hi all
    Can any one explain about the client system and logical system??
    When this message type will comes in to picture at the time idoc processing??
    Thanks and Regards
    Arun Joseph

    hi Arun,
    I am giving the complete info on idoc.pls chk once.then ur issue will be solved.ok
    and to know the diffrence between client and logical system very keenly go thru this link
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=abouttheclientsystemandlogicalsystem&adv=false&sortby=cm_rnd_rankvalue
    IDOC Administration
    Step 1: Tcode: WE 46
    Setting the Global Parameter for IDOC Interface
    Step 2: Maintaing a Logical System
    Path: From the ALE Customizing in IMG, choose Sending and Recieving Systems,
    Logical Systems, Define Logical systems
    Go to Spro transaction
    Step 3: Allocating Logical systems to the Client
    Path: From the ALE Customizing in IMG, choose Sending and Recieving Systems,
    Logical Systems, Assign Client to Logical systems
    Go to Spro transaction
    Step 4: Setting up an RFC destination
    Tcode: SM 59
    Path: From the ALE Customizing in IMG, choose Communication, Define RFC
    Destination
    You can also do the Advanced Settings in the RFC Destination
    Step 5: The PORT definition
    TCode: WE 21
    Path: From the ALE Customizing in IMG, choose Sending and Recieving Systems,
    Systems in Network, Asynchronous Processing, Assign Ports, Define Port
    Step 6: Generating Partner Profiles
    TCode: BD 82
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, PArtner Profiles and Time of Processing, Generate Partner Profiles
    Step 7: Distributing the Model
    TCode: BD 64
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, Maintain Distribution Model and Distribute Views
    Technques for Distributing the Master Data:
    Technique 1: The Push Approach
    Executing the Process:
    TCode: BD 10
    Path: from the ALE Main Menu, choose Material Data Distribution, Cross
    Application, Material, Send
    Technique 2: The Change Pointer Technique
    Enable Change Pointers Globally
    TCode: BD 61
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution, Replication of Modified Data, Activate
    Change Pointers
    Enable Change Pointers Globally
    TCode: BD 50
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution, Replication of Modified Data, Activate
    Change Pointers for Message Type
    Specify the Fields for which Change Pointers are to be written
    TCode: BD 52
    Path: From the ALE main Menu, Choose ALE Development, IDOCs, Change , Define
    Change-Relevant Fields
    How the Classification system works:
    Creating a Class Type
    TCode: O1 CL(it is CAPITAL O)
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Distribution using Object Classes, Maintain Class Types
    Maintaing Status for the Class Types:
    TCode: O1 CL(it is CAPITAL O)
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Distribution using Object Classes, Maintain Class Types
    Maintaing Classification Status:
    TCode: O1 CL(it is CAPITAL O)
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Distribution using Object Classes, Maintain Class Types
    Maintaing Classes:
    TCode: CL 01 (it is zero)
    TCode: O1 CL(it is CAPITAL O)
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Distribution using Object Classes, Maintain Classes
    Allocating classes to the Logical Syatems
    TCode: BD 68
    TCode: O1 CL(it is CAPITAL O)
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Distribution using Object Classes, Assign classes
    to Logical systems
    Filering at the IDOC level:
    Identify the Filter Object:
    TCode: BD 59
    Path: From the ALE main Menu, Choose ALE Development, IDOCs,Data Filtering, Assign Filter Objects
    Type to IDOC Field
    Modify the Distribution model
    How Segment Filtering Works:
    Configuration:
    Configring the segment-filtering technique is a one-step process.Just specify the segments to be filtered
    TCode: BD 56
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Scope of the Data for Distribution, Filter IDOC Segments
    The Reduced IDOC Type:
    The reduced IDOC type allows to get down to the field level and specify the fields a recieving system does not need.
    The System still needs the fields, but this has no effect on the recieving system because each field has a null value,
    represented by a forward slash(/) in the field.
    TCode: BD 53
    Path: From the ALE Customizing in IMG,choose Modeling and Implemantation Business
    Process, MAster Data distribution,Scope of the Data for Distribution, Message Reduction,
    Create Reduced Message Type
    IDOC:
    Complete Documentaion on any IDOC using TCode: WE 60
    IDOC Display Tool: TCode: WE 02 or WE 05
    IDOC DEfinition components:
    Segment Components:
    1. Segment Type (E1, Z1)
    2. Segment Definition(E2, Z2)
    3. Segment Documentation(E3, Z3)
    E- SAP Defined
    z- Custom Defined
    IDOC runtime componets:
    control Record:
    Data Record:
    Staus Record:
    First Create the Segments using TCode: WE 31
    and then create the IDOC using TCode: We3 30
    first release the segments and then IDOC.
    Creating a new Basic IDOC Type:
    STEP 1: Analyze the Data:
    STEP 2: Create Data Elements:
    STEP 3: Create Segments:
    STEP 4: Create Basic IDOC Type:
    1. Execute TCode: WE 30
    2. Select the Create new option and enter a description for your basic IDOC type
    3. click the IDOC name, and click the create icon.
    Enter the segment type and its attributes.
    4. Keep on adding the segments as in step 3.
    5. Save the basic IDOC type
    Step 5: Release the Segment Type and Basic IDOC Type
    STEP 6: Transport the Segments and Basic IDOC Type
    Extending a Basic IDOC type:
    STEP 1: Analyze the Data:
    STEP 2: Create Custom Segments:
    STEP 3: Create the IDOC Type:
    STEP 4: Release the custom Segment and IDOC Extension
    Develop the function module for fteching the Data and then inserting the data into IDOC using
    EDIDD(for control Record) and EDIDC table(for DATA Record)
    Configuring the Systen for IDOCs
    Configure an Outboubd Process that uses Message Control
    Step 1: Create a new Message Type
    TCode: We 81
    Path: From the Area menu of EDI, choose Development, IDOC Type/ Message
    Step 2: link the IDOC type to the Message Type
    TCode: We 82
    Path: From the Area menu of EDI, choose Development, IDOC Type/ Message
    Step 3: Create a new Process Code
    TCode: We 41
    Path: From the Area menu of EDI, choose Control,Outbound Process COde
    Step 4: Create or Change a Partner Profile
    TCode: We 41
    Path: From the Area menu of EDI, choose IDOC,Partner Profile
    Configure an Outboubd Process for Stand-Alone Programs
    1. Create a new message type
    2. Link the IDOC type to the Message Type
    3. Add the message to the ALE Distribution Model(use BD 64)
    4. Create or change the Partner Profile
    go through the following site to have screen shots.
    http://www.****************/Tutorials/ALE/ALEMainPage.htm
    thanks
    karthik
    reward me points if usefull

  • Send Mail thru SAPMAIL in between clients?

    Hi experts,
    This time I want to know on how to send attachments text/xls files using SAP MAIL (SO01) in between clients? like clnt 200 to clnt 300? any FMs? BAPIs? RFCs?
    Thanks & Regards

    i think you got to run catproc.sql script and then see whether plsql.jar may appear in the directory.. also there is dbmsutilities script that might be helpful to you.. may not be the right solution but some trial and errors with those two packages will give you the anser for sure.

  • HOW TO COPY STANDARDTEXT BETWEEN CLIENTS

    Hi All,
    HOW TO COPY STANDARDTEXT BETWEEN CLIENTS. I WANT TO COPY BETWEEN 200 TO 110 CLIENTS.
    Thanks & Regards,
    suman.

    Hi Suman,
    Check below points.
    2. goto se09 and create a new
    customizing rqeuest.
    3. after that
    in the object list,
    go in edit mode
    and a new window will come
    where u can add the objects(in table control)
    4. there u put
    program id = R3TR
    object type = TEXT
    object name = TEXT,YHRS_FNF_LTR,YHR1,E
    where
    YHRS_FNF_LTR = name of standard text
    YHR1 = TEXT ID
    E = english language
    How To Transport STANDARD TEXTS??
    Transporting standard text
    Thanks
    Ramakrishna

  • Diff. between Client Refresh and System Refresh ?

    Hi Gurus,
    Can anyone tell me the difference between System Refresh and Client Refresh ??
    Regards,
    Kalyan

    Hai,
    Check the below link.....
    http://sap.ittoolbox.com/groups/technical-functional/sap-basis/difference-between-client-refresh-and-system-refresh-1838354?cv=expanded
    Regards,
    Yoganand.V

  • Difference Between "Client Level & Company Code Level"

    Hello
    Can any explain me the difference between client level and company code level?
    What is the configuration that we do on client level and company code level?

    Message: Dear,
    Client : Unit within SAP system, self-contained, separate master data with independent set of tables. It represent corporate group.
    Company Code : Smallest organizational unit of external account for which a complete, self-contained bookkeeping system can be replicated.
    e.g, company within a corporate group
    Note: You will do the configuration at company code level by logging into the client for master tables etc..

  • Difference between clients.

    Hello all,
    I have a basic question here.
    What is the difference between clients in a system.
    For example we are having 120, 600 and 700 clients in DEV
    What type of data is stored in those clients. Will the data be different. Since programs are client independent can I do modifications to my programs in 600 and 700 clients.
    Why the name SILVER and GOLD to the clients??
    Please explain.

    Hi Naren,
    Client strategies vary from place to place. But one thing to understand is that a client is SAP's way of logically seperating data. In the underlying database, though, it will be just one table holding all the data for all the clients within the same server.
    There are repository objects and some configuration tables that are cross-client or client-independent. In the basis configuration, there is a setting where they configure each client to be modifiable, non-modifiable and if modifiable, whether client-dependent modification are allowed or client-independent modifications are allowed.
    So, if they allow it, you can do your programs anywhere. But one more factor to consider is the transport layer. This is again configuration dependent on client. So if you are making changes in client that is not on the transport path, then you will have tough time getting it into higher systems.
    GOLD, SILVER etc are typically terminology used for representing the importance of the client. Typically Golden client is one which is like a vault, where you move all your tested configuration and client-dependent activities and leave it there. This will only be used if there is a need for restore or creating a brand new client. All other clients in development system will either be constantly changing or refreshed periodically. There will be lot test data also. So you need a client that is clean from all this garbage and that is your golden client. I have to admit that I didn't hear SILVER being used anywhere, but it may be on similar lines.
    Clients are dedicated to development, configuration, crash-and-burn, unit testing and golden client. It is not necessary to have all these, but most often they use this landscape in development systems.
    In production systems, different clients are used to seggregate access and data.
    Hope this helps,
    Srinivas

  • Problem copying sap scripts between clients

    Dear Abaper's,
    while i copying sap scripts between different client i'm getting following error or warning messages. please help me to solve this problem as soon as possible.
    Copy Forms Between Clients
    ZJOML_EXC : Problem calling the transport system and Workbench Organizer

    Did you check if the script exists, is not already locked in a transport request or is defined in a local class
    Regards,
    Raymond

  • Direct Connection between clients using sockets

    Hi, I'm a new user and i have a problem with sockets:
    The question is how can i directly connect two users that are already connected to a server in other machine???
    I mean
    user1 is connected to server
    user2 is connected to server
    user1 tries to communicate with user1 but don't want to use the server, and the server only provides the client1's ip
    I first thought to do this:
    user2 asks to server for the info of a client1-server waiting for connections, and i think it could work fine, but only if the ports are not closed by firewall, because client-server will be running in a transparent mode for user and user may not know anything about servers, sockets, ports, etc. the user only will work with a gui or something else and that's all
    Does anybody know what can i do to make this possible???
    PD
    Sorry for my bad English

    It can be implemented like you said. Make one of the clients open a serversocket and pass the ip and port number through the server to the other client with information on where to connect.
    If you're going to use direct connection between clients a lot then I would recommend that every client open a default serversocket at startup and register that information with the server and then every other client can ask the server for the ip and port to whatever client they wish to open a direct connection to.
    Be aware that clients often are behind NATs and firewalls, so if need to deal with those issues you got to use hole punching (http://en.wikipedia.org/wiki/hole_punching) - pref on a known port like 80 - and to deal with the less frequently used application firewalls you can use http encapsulation in addition.

Maybe you are looking for