my $queue = new FS::queue {
'svcnum' => $svc->svcnum,
- 'job' => 'FS::part_export::soma::$method',
+ 'job' => 'FS::part_export::soma::statuschange',
};
- my $error = $queue->insert( $self->option('url'), %args );
+ my $error = $queue->insert( %args );
return $error if $error;
next unless $application->definitionId == $appid;
$instance_id = $application->instanceId;
- $app_def = $app_catalog->getApplicationDef($appid, $cpeid);
- @attr_def = grep { $_->internalName eq 'status' } @{$app_def->attributes};
+ my $app_def =
+ $soma_objects->{AppCatalog}->getApplicationDef($appid, $cpeid);
+ my @attr_def = grep { $_->internalName eq 'status' }
+ @{$app_def->attributes};
foreach my $attribute ( @{$application->attributes} ) {
- next unless $attibute->definitionId == $attr_def[0]->definitionId;
+ next unless $attribute->definitionId == $attr_def[0]->definitionId;
$attribute->{value} = 'S';
$soma_objects->{Applications}->setAppAttribute( $cpeid,
next unless $application->definitionId == $appid;
$instance_id = $application->instanceId;
- $app_def = $app_catalog->getApplicationDef($appid, $cpeid);
- @attr_def = grep { $_->internalName eq 'status' } @{$app_def->attributes};
+ my $app_def =
+ $soma_objects->{AppCatalog}->getApplicationDef($appid, $cpeid);
+ my @attr_def = grep { $_->internalName eq 'status' }
+ @{$app_def->attributes};
- foreach my $attribute ( @{$applicate->attributes} ) {
- next unless $attibute->definitionId == $attr_def[0]->definitionId;
+ foreach my $attribute ( @{$application->attributes} ) {
+ next unless $attribute->definitionId == $attr_def[0]->definitionId;
$attribute->{value} = 'E';
$soma_objects->{Applications}->setAppAttribute( $cpeid,
my ( $self, $svc ) = @_;
my $svcdb = $svc->cust_svc->part_svc->svcdb;
- return sprintf( '%016d', $svc->id ) if $svcdb eq 'svc_external';
+ if ($svcdb eq 'svc_external') {
+ my $esn = $svc->title;
+ $esn =~ /^\s*([\da-fA-F]{1,16})\s*$/ && ($esn = $1);
+ return sprintf( '%016s', $esn );
+ }
my $cust_pkg = $svc->cust_svc->cust_pkg;
return '' unless $cust_pkg;
warn "part_export::soma found multiple ESNs for cust_svc ". $svc->svcnum
if scalar( @cust_svc ) > 1;
- sprintf( '%016d', $cust_svc[0]->svc_x->id );
+ my $esn = $cust_svc[0]->svc_x->title;
+ $esn =~ /^\s*([\da-fA-F]{1,16})\s*$/ && ($esn = $1);
+
+ sprintf( '%016s', $esn );
}