Communicating with External software

Moderator: crythias

Locked
cjseriy
Znuny newbie
Posts: 27
Joined: 05 Jan 2011, 22:03
Znuny Version: 3.04

Communicating with External software

Post by cjseriy »

Hi!
i have an external software from which I want to be able to open query of tickets where otrs_customerid=ext.software_emailaddress.

External software have 3 communication channels
1. URL (request and reply are send via url)
2. Sockets (TCP/IP sockets) Host name, request-reply ports,login details
3. SOAP (Web services via SOAP)

1. What is the easiest communication channel from above to achieve that?
2. Could you give an example how to achieve that task?

i tried to use url http://11.11.11.11/otrs/rpc.pl but it replies 411 error
url http://11.11.11.11/otrs/scripts/rpc-example.pl replies

Code: Select all

Software error:
slurp_filename('/usr/local/otrs/bin/cgi-bin/scripts') / opening: (2) No such file or directory at /usr/local/lib/perl5/site_perl/5.10.1/mach/ModPerl/RegistryCooker.pm line 541
Do I have to use this code?

Code: Select all

TicketSearch()
 To find tickets in your system.     my @TicketIDs = $TicketObject->TicketSearch(
        # result (required)
        Result => 'ARRAY' || 'HASH' || 'COUNT',
        # result limit
        Limit => 100,
        # ticket number (optional) as STRING or as ARRAYREF
        TicketNumber => '%123546%',
        TicketNumber => ['%123546%', '%123666%'],
        # ticket title (optional) as STRING or as ARRAYREF
        # CustomerID (optional) as STRING or as ARRAYREF
        CustomerID => '123',
        CustomerID => ['123', 'ABC'],
        # search in archive (optional)
        ArchiveFlags => ['y', 'n'],
        # OrderBy and SortBy (optional)
        OrderBy => 'Down',  # Down|Up
        SortBy  => 'Age',   # Owner|Responsible|CustomerID|State|TicketNumber|Queue|Priority|Age|Type|Lock
                            # Title|Service|SLA|PendingTime|EscalationTime
                            # EscalationUpdateTime|EscalationResponseTime|EscalationSolutionTime
                            # TicketFreeTime1-6|TicketFreeKey1-16|TicketFreeText1-16
        # OrderBy and SortBy as ARRAY for sub sorting (optional)
        OrderBy => ['Down', 'Up'],
        SortBy  => ['Priority', 'Age'],
        # user search (UserID is required)
        UserID     => 123,
        Permission => 'ro' || 'rw',
        # customer search (CustomerUserID is required)
        CustomerUserID => 123,
        Permission     => 'ro' || 'rw',
        # CacheTTL, cache search result in seconds (optional)
        CacheTTL => 60 * 15,
    );


Returns:

Result: 'ARRAY'    @TicketIDs = ( 1, 2, 3 );


Result: 'HASH'    %TicketIDs = (
        1 => '2010102700001',
        2 => '2010102700002',
        3 => '2010102700003',
    );


Result: 'COUNT'    $TicketIDs = 123;
OTRS 3.0.4, FreeBSD, using not for IT but as a service desk only to effectively process customer's requests.
raghuram
Znuny newbie
Posts: 2
Joined: 26 Jul 2011, 11:37
Znuny Version: 4
Real Name: raghu
Company: demansol

Re: Communicating with External software

Post by raghuram »

Hi can anyone suggest how to communicate with external software...like accessing external hard drives....do we need a protocol like thing...???
renee
Znuny expert
Posts: 241
Joined: 06 Feb 2009, 11:15
Znuny Version: 3.0.x
Company: Perl-Services.de
Contact:

Re: Communicating with External software

Post by renee »

What does "communicate with external software" mean? Does the third party software have an API? If not, how could OTRS get data? Can you change behaviour of the software so that you can write plugins? Should the software trigger actions at OTRS? Should OTRS trigger actions at the third party software? What actions should be available?

There are way too many questions to give you appropriate advice.

Edit: Where is the software located? On the same machine as OTRS?
Need a Perl/OTRS developer? You can contact me at info@perl-services.de
Locked