SDK IP Functions



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 18/12/2007 at 18:10, xxxxxxxx wrote:

    Can you be more specific about the IP functions involved?

    Oh, I see these under c4d_general as "GeIP....()". I tried the SendMailAvailable() and SendMail() without any success (say, for a quick means of sending me logs). SendMailAvailable() always returned FALSE.

    class IpConnection is not shown in the SDK documentation. As a matter of fact, it is not defined anywhere in the R9.6 or R10 SDK (Resource folder). These methods are probably 'not-ready-for-us' methods.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 18/12/2007 at 18:55, xxxxxxxx wrote:

    Howdy,

    Well, for what I wanted to do, it may not even be necessary to know what's in the IpConnection class. It may only be necessary to pass it to the other functions, like the GeIpReadBytes() function.

    Here's a wild guess as to what might need to be done:

    > _

      
    \>  IpConnection* ipc = GeIpOpenOutgoing(hostname, thread, ferr);  
    \>  LONG size = GeIpBytesInInputBuffer( ipc);  
    \>  GeIpReadBytes(ipc, buf, size)  
    \>  GeIpCloseConnection(ipc);  
    \>  
    

    _

    Then somehow compare the version number retrieved from the connection and stored in the buffer, to the version number stored in the plugin.

    But there are still a lot of questions as to how those functions are actually used. A big question would be which thread to safely do it in (most likely a thread that is running when Cinema 4D is idle), and how would you go about getting a pointer to that thread so it could be passed to the GeIpOpenOutgoing() function?

    I really don't know anything about online programming, so there's probably a lot more to it than the simple guess above, but it would be nice if plugins could do an online check, so that users who change their email address and then don't notify the plugin developer, can still be informed of updates. ;)

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 19/12/2007 at 02:51, xxxxxxxx wrote:

    This is also something I have to look into. I try to get an example. Will let you know if I have something working ready.

    cheers,
    Matthias



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 03/01/2008 at 17:12, xxxxxxxx wrote:

    Howdy,

    Any word on this?

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 04/01/2008 at 06:19, xxxxxxxx wrote:

    Hello All,

    i need these infos too ;)

    cheers
    Renato



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 22/01/2008 at 08:43, xxxxxxxx wrote:

    Howdy,

    Just a little friendly reminder and bump. Anything yet?

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 21/02/2008 at 15:42, xxxxxxxx wrote:

    Howdy,

    Still no info?

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 21/02/2008 at 16:18, xxxxxxxx wrote:

    Sorry for the delay but this IP stuff is complete new territory for me so I have to wrap my head around it first. As soon as I have something working I will post it here.

    cheers,
    Matthias



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 21/02/2008 at 16:43, xxxxxxxx wrote:

    Howdy,

    No Problem. I was just bumping the thread to keep it active.

    I think a lot of us plugin developers would love to be able to implement an online live update notification in our plugins. ;o)

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/03/2008 at 18:20, xxxxxxxx wrote:

    Howdy,

    Just bumping this thread up again. ;o)

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 28/03/2008 at 18:21, xxxxxxxx wrote:

    Up!



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 31/03/2008 at 03:06, xxxxxxxx wrote:

    Up!^^

    @Cactus Dan:

    ipconnection* ipc = GeIpOpenOutgoing(hostname, thread, ferr);?

    How do you initialize the thread and ferr? Thanks :)
    I try to catch the Bytes via WireShark Network Protocol, perhaps I get a little overview, how to control it.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 31/03/2008 at 03:31, xxxxxxxx wrote:

    I'll try to sort this out this week and to provide an example how to use these functions.

    cheers,
    Matthias



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 31/03/2008 at 05:10, xxxxxxxx wrote:

    Great announcement :)

    Thanks...



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 31/03/2008 at 07:07, xxxxxxxx wrote:

    Howdy,

    Thanks.

    In the meantime if we can't get a working example, an alternative might be to create a button named "Check for Updates" and then use the GeOpenHTML() function to open a web page in the default browser when the button is clicked. ;o)

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 04/04/2008 at 02:39, xxxxxxxx wrote:

    Hi,

    Unfortunatly I still can't provide you with an example. I have to do some more background reading about this subject (TCP/IP and all).

    cheers,
    Matthias



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 04/04/2008 at 06:34, xxxxxxxx wrote:

    Howdy,

    > Quote: Originally posted by Shawni on 31 March 2008
    >
    > * * *
    >
    > How do you initialize the thread and ferr? Thanks :)
    > I try to catch the Bytes via WireShark Network Protocol, perhaps I get a little overview, how to control it.
    >
    >
    > * * *

    Yes, this is one of the questions in my mind, too. If you can give us some info about what thread we should use, and how to get that thread? Or do we have to create our own background thread, and how would we go about that?

    If you can give us an example of that, maybe some of us can also do some studying and experimenting. ;o)

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 07/04/2008 at 02:15, xxxxxxxx wrote:

    The thread can be a thread passed by Cinema, for instance in a videopost plugin, or your own thread. You would call for instance GeIpWaitForIncoming within the Main() of your thread and pass this. ferr is just a LONG that is filled with the error code, you should check for ferr != 0. The IP address for GeIpOpenListener() is encoded like this (take 127.0.0.1 for example)

    > \> (127 << 24) + (0 << 16) + (0 << 8) + 1 \> or 7f000001 \>

    cheers,
    Matthias



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 12/04/2008 at 12:57, xxxxxxxx wrote:

    Quote: Originally posted by kuroyume0161 on 18 December 2007
    >
    > * * *
    >
    >
    > I tried the SendMailAvailable() and SendMail() without any success (say, for a quick means of sending me logs). SendMailAvailable() always returned FALSE.
    >
    > * * *

    Hi,

    have you been able to send the e-mail finally? I still cannot. However SendMailAvailable() returns TRUE in my case. But I am unable to pass t_to parameter to the SendMail function. If I call it with NULL for t_to the default system mailer (thunderbird in my case) opens with right values for body and subject filled in. But as soon as t_to differs from NULL or empty string Cinema crashes. Does anyone successfully passed this parameter to the function?

    Here is the code:

    > String toadresa = "nekdo@nekde.com"; \> if (SendMailAvailable()) { \>      SendMail(String("subject"),&toadresa;,NULL,NULL,NULL,String("body"),SENDMAIL_SENDDIRECTLY); \> }

    Thanks in advance.



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 05/02/2009 at 09:42, xxxxxxxx wrote:

    Hi,

    are there any news about the IP functions and their documentation?
    I managed to set up a thread in C4D waiting for an incoming connection on a given port. When the connection is initiated, I call GeIpBytesInInputBuffer and GeIpReadBytes, but both always give me 0 as return, although I'm sending data from the other end. And as far as I found out, there's no way of telling that the connection dropped, since there's no function for asking about the connection status and the GeIpBytesInInputBuffer and GeIpReadBytes still return 0 after I closed the connection from the other side.

    It am eager to use the IP functions, so it would be great if someone could help me out.

    cheers


Log in to reply