GenericAgent - Event-Trigger - CMD

Hilfe zu OTRS Problemen aller Art
Post Reply
otrscrasher
Znuny newbie
Posts: 45
Joined: 01 Feb 2013, 15:54
Znuny Version: 3.3.8

GenericAgent - Event-Trigger - CMD

Post by otrscrasher »

Hallo,

ich haben in meinem Testsystem (Linux - OTRS 3.3.5) ein "Event-Trigger:" konfiguriert.

Typ Ereignis
Ticket TicketQueueUpdate

Ziel ist es beim verschieben eines Tickets in ine bestimmte Queue soll automatisch eine "Notiz hinzugefügt" werden (klappt wunderbar) allerdings möchte ich noch zusätzlich ein Skript ausführen (klappt leider nicht).

Unter "Ticket-Kommandos" habe ich bei
"Sende eine Agent/Kunden Benachrichtigung bei Änderungen:" ein "JA"
und bei CMD:

/bin/bash /opt/textscript.sh


Das ist ein einfaches Testscript was einfach nur eine E-Mail verschickt.

Im Terminal klappt es : ./textscript.sh

Ich habe die Berechtigungen überprüft: "rwx r-x r-- otrs apache"


Ich habe gesehen das da noch "(Dieses Kommando wird mit ARG[0] (die Ticket Nummer) und ARG[1] die TicketID ausgeführt.) " steht. Muss ich das ins Skript bzw. in den Aufruf des Skriptes einbauen?


Viele Grüße
---RedHat 6.5---MySql 5.1.73---Apache 2.2.15---OTRS 3.3.8---
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: GenericAgent - Event-Trigger - CMD

Post by reneeb »

Steht denn irgendetwas in den Logs?
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
otrscrasher
Znuny newbie
Posts: 45
Joined: 01 Feb 2013, 15:54
Znuny Version: 3.3.8

Re: GenericAgent - Event-Trigger - CMD

Post by otrscrasher »

Code: Select all

[Notice][Kernel::System::GenericAgent::_JobRunTicket] Execute '/bin/bash /opt/textscript.sh' for Ticket (2014040210000015/115876).
[Error][(eval)][96] Got no email on STDIN!
[Notice][Kernel::System::GenericAgent::_JobRunTicket] Command returned a nonzero return code: rc=256, err=
---RedHat 6.5---MySql 5.1.73---Apache 2.2.15---OTRS 3.3.8---
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: GenericAgent - Event-Trigger - CMD

Post by reneeb »

Dein .sh scheint den E-Mail-Text auf STDIN zu erwarten. Das bekommt es aber nicht... Das Skript bekommt nur zwei Parameter: die Ticketnummer und die Ticket-ID. Es ist so als würdest Du auf der Kommandozeile

Code: Select all

bash textscript.sh 201304031000001 231
aufrufen (201304031000001 ist die Beispielticketnummer und 231 die Beispiel-Ticket-ID)
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
otrscrasher
Znuny newbie
Posts: 45
Joined: 01 Feb 2013, 15:54
Znuny Version: 3.3.8

Re: GenericAgent - Event-Trigger - CMD

Post by otrscrasher »

ich kriege das irgendwie nicht so ganz hin :(


ich habe jetzt was anderes versucht, einfach nur zum testen die Ticketnr und TicketID in ein Textfile schreiben ... :



CMD: /usr/bin/perl /opt/otrs-textfile.pl

Code: Select all

 #!/usr/bin/perl -w

use strict;

my $ticketnr = shift;
my $ticketid = shift;

open FILE, "otrs-perl-test-file.txt" or die $!;
print "$ticketnr \n";
print "$ticketid \n";
close FILE;

und trotzdem kommt der Fehler:

Code: Select all

[Notice][Kernel::System::GenericAgent::_JobRunTicket] Execute '/usr/bin/perl /opt/otrs-textfile.pl' for Ticket (2014032510000037/115872).
[Notice][Kernel::System::GenericAgent::_JobRunTicket] Command returned a nonzero return code: rc=512, err=

Hat jemand noch vielleicht einen kleinen Tipp?
---RedHat 6.5---MySql 5.1.73---Apache 2.2.15---OTRS 3.3.8---
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: GenericAgent - Event-Trigger - CMD

Post by reneeb »

Hast Du das Programm mal als Webserver-User laufen lassen?

Code: Select all

open FILE, "otrs-perl-test-file.txt" or die $!;
Du öffnest hier die Datei zum Lesen. Du solltest also den Modus angeben. Auch solltest Du den Pfad komplett angeben, weil das jetzt einfach relativ ist und davon abhängt von wo aus das Skript aufgerufen wird. Ich weiß jetzt nicht, was das "aktuelle Verzeichnis" ist wenn der Webserver das Programm aufruft.

Du solltest also besser

Code: Select all

open FILE, ">", "/tmp/otrs-perl-test-file.txt" or die $!;
schreiben. Siehe auch http://reneeb-perlblog.blogspot.de/2009 ... -open.html

Code: Select all

print "$ticketnr \n";
print "$ticketid \n";
Hier gibst Du die Variablen auf STDOUT aus und schreibst das nicht in die Datei. Das müsste dann

Code: Select all

print FILE "$ticketnr \n";
print FILE "$ticketid \n";
heißen
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: GenericAgent - Event-Trigger - CMD

Post by reneeb »

Und der Webserver-User braucht natürlich auch die Rechte auf das Programm zuzugreifen.
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
otrscrasher
Znuny newbie
Posts: 45
Joined: 01 Feb 2013, 15:54
Znuny Version: 3.3.8

Re: GenericAgent - Event-Trigger - CMD

Post by otrscrasher »

Hab jetzt etwas anders ...

Code: Select all

#!/usr/bin/perl -w

use strict;

my $ticketnr = shift;
my $ticketid = shift;

open(my $fh, '>>', "otrs-perl-test-file.txt") or die $!;
        print $fh "$ticketnr \n";
        print $fh "$ticketid \n";
        print $fh "mit otrs }\n";

close $fh;


Testweise die Rechte:

Code: Select all

-rwxrwxrwx.  1 apache apache       229 Apr  4 14:45 otrs-webservice.pl

Fehler:

Code: Select all

[Notice][Kernel::System::GenericAgent::_JobRunTicket] Execute '/usr/bin/perl /opt/otrs-webservice.pl' for Ticket (2014040410000011                                                        /115877).
[Notice][Kernel::System::GenericAgent::_JobRunTicket] Command returned a nonzero return code: rc=3328, err=
---RedHat 6.5---MySql 5.1.73---Apache 2.2.15---OTRS 3.3.8---
Post Reply