[horde] [imp] unable to "Update respondent status"

Pulz, Joerg Joerg.Pulz at frm2.tum.de
Mon Dec 1 09:25:43 UTC 2014


----- Message from Michael J Rubinsky <mrubinsk at horde.org> ---------
     Date: Sat, 29 Nov 2014 00:35:49 -0500
     From: Michael J Rubinsky <mrubinsk at horde.org>
Reply-To: mrubinsk at horde.org
  Subject: Re: [horde] [imp] unable to "Update respondent status"
       To: "Pulz, Joerg" <Joerg.Pulz at frm2.tum.de>
       Cc: horde at lists.horde.org


> Quoting Pulz, Joerg <Joerg.Pulz at frm2.tum.de>:
>
>> ----- Message from Michael J Rubinsky <mrubinsk at horde.org> ---------
>>    Date: Mon, 24 Nov 2014 10:32:39 -0500
>>    From: Michael J Rubinsky <mrubinsk at horde.org>
>> Reply-To: mrubinsk at horde.org
>> Subject: Re: [horde] [imp] unable to "Update respondent status"
>>      To: horde at lists.horde.org
>>
>>
>>> Quoting Pulz, Joerg <Joerg.Pulz at frm2.tum.de>:
>>>
>>>> ----- Message from Michael J Rubinsky <mrubinsk at horde.org> ---------
>>>>  Date: Sat, 22 Nov 2014 20:28:16 -0500
>>>>  From: Michael J Rubinsky <mrubinsk at horde.org>
>>>> Reply-To: mrubinsk at horde.org
>>>> Subject: Re: [horde] [imp] unable to "Update respondent status"
>>>>    To: horde at lists.horde.org
>>>>
>>>>
>>>>> Quoting Pulz, Joerg <Joerg.Pulz at frm2.tum.de>:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I get the following error when I click on "Update respondent  
>>>>>> status" in an email i received as response to an event  
>>>>>> invitation i sent using Kronolith:
>>>>>>
>>>>>> EMERG: HORDE [imp] Call to a member function getHeader() on a  
>>>>>> non-object [pid .... on line 121 of  
>>>>>> "/..../horde/imp/lib/Ajax/Imple/ItipRequest.php"]
>>>>>>
>>>>>> In the WebUI i only see the red box stating "Error when  
>>>>>> communicating with the server."
>>>>>>
>>>>>> Just a note, the event response email is generated by Horde itself.
>>>>>>
>>>>>> This is with latest GIT (pulled just minutes ago from github).
>>>>>>
>>>>>> Any hint or fix is much appreciated.
>>>>>
>>>>> Fixed in Git.
>>>>
>>>> ----- End message from Michael J Rubinsky <mrubinsk at horde.org> -----
>>>>
>>>> Hi Michael,
>>>>
>>>> thanks for fixing this, but it's still not working.
>>>> Though the error is different:
>>>>
>>>> EMERG: HORDE [kronolith] Call to a member function toHash() on a  
>>>> non-object [pid .... on line 692 of  
>>>> "/..../horde/kronolith/lib/Application.php"]
>>>>
>>>> And the red box shows:
>>>>
>>>> There was an error updating the event: Permission Denied
>>>>
>>>> The default calendar in Kronolith settings is my own calendar. I  
>>>> can create, delete or anything else in this calendar. Just  
>>>> updating the respondent status out of IMP is not working.
>>>>
>>>> Any hints?
>>>
>>>
>>> Is your calendar a local calendar? Do you by any chance have a  
>>> remote calendar configured that isn't currently available?
>>
>> ----- End message from Michael J Rubinsky <mrubinsk at horde.org> -----
>>
>> Dear Michael,
>>
>> the calendar is local and was automatically generated by Horde  
>> itself after the first login.
>> Permissions and owner for this calendar where never touched or changed.
>>
>> Kronolith calendar driver is SQL and the driverconfig value is  
>> "Horde defaults".
>> Horde itself is configured to use a PostgreSQL database running on  
>> the same host. The "splitreads" option is not configured.
>
> I'm at a loss then. That line should only be reached when accessing  
> kronolith over dav. Try getting a backtrace by placing  
> Horde::debug(); right before line 690. The output will be in  
> horde_debug.txt in your temporary directory.

----- End message from Michael J Rubinsky <mrubinsk at horde.org> -----

Dear Michael,

thanks for your response and for looking at it.
You are right, the error message in the log has nothing to do with  
updating the respondent status.

I did some further testing and can provide some more details.
Here are the steps to reproduce:

Create an event/appointment on an ActiveSync client (Android for me).  
Either add an attendee directly when creating the event or modify the  
event afterwards and add an attendee, the order doesn't matter.

You will see the following in the clients sync log:
<ClientEntryId>
  325ddb65-6ed5-408e-b7b4-aca646d1f32e
</ClientEntryId>
<ServerEntryId>
  20141201091425.VE112qMahoFlX-0kMiECsQ8 at ....
</ServerEntryId>

If you look in the database, you will see the entry created with  
"event_uid" == "ServerEntryId", but the client seems to stick with his  
own "ClientEntryId" and never changes this. Therefor, event  
invitations will be sent out by the ActiveSync client using his own  
ClientEntryId.
So the attendee receives an event invitation with the following line:
     UID:325ddb65-6ed5-408e-b7b4-aca646d1f32e

If the attendee accepts the event and adds it to his own calendar, an  
entry in the database is created showing exactly the "event_uid" of  
the invitaion.
Now I get the response from the attendee and try to update it's  
status, but the response contains again the following line:
     UID:325ddb65-6ed5-408e-b7b4-aca646d1f32e

And now I get the "Permission denied." error message that, in this  
case, is completely correct as in my own calendar the event is stored  
with "event_uid":
     20141201091425.VE112qMahoFlX-0kMiECsQ8 at ....
and I have no access tho the attendees calendar where it is stored as  
"event_uid":
     325ddb65-6ed5-408e-b7b4-aca646d1f32e

If I send out the invitation using the Horde WebUI, the correct  
"event_uid" is used and everything is working.

So the root of this problem is either Horde creating a new "event_uid"  
instead of using the one provided by the ActiveSync client or the  
ActiveSync client not updating it's "event_uid" with the Id provided  
by Horde.

Hope that helps to reproduce and fix the problem.

Kind regards
Joerg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5262 bytes
Desc: S/MIME Signature
URL: <http://lists.horde.org/archives/horde/attachments/20141201/b89edee1/attachment.bin>


More information about the horde mailing list