Warning: Empty Character ID

Original Discord Post by fdorike | 2024-04-27 06:03:59

When I send text after a Convai Update, it returns an ‘Empty Character ID’ error.
As shown in the image, the Convai chatbot assigns the Character ID immediately after startup.
As shown in the image, the Convai Update sets the same Character ID.
However, when text is sent using the Send Text Dispatcher Event, an error occurs during the execution of the pre-coded Send Text function in ConvaiBasePlayer This section is marked with ★ for debugging purposes.

Sometimes this error occurs, sometimes it does not. It may be a timing issue. Is there a solution?

output.log

[2024.04.27-05.36.13:765][507]LogBlueprintUserMessages: [BP_FirstPersonCharacter_C_0] ★★★★★
[2024.04.27-05.36.13:766][507]ConvaiFormValidationLog: Warning: Empty Character ID
[2024.04.27-05.36.13:767][507]ConvaiChatbotComponentLog: Warning: UConvaiChatbotComponent Get Response Failed! | Character ID : | Session ID : -1
[2024.04.27-05.36.13:768][507]ConvaiChatbotComponentLog: UConvaiChatbotComponent Request Finished! | Character ID : | Session ID : -1
[2024.04.27-05.36.13:768][507]LogBlueprintUserMessages: [BP_FirstPersonCharacter_C_0] ★★★★★
[2024.04.27-05.36.18:471][603]LogViewport: Display: Viewport MouseLockMode Changed, LockOnCapture → DoNotLock
[2024.04.27-05.36.18:471][603]LogViewport: Display: Viewport MouseCaptureMode Changed, CapturePermanently → CaptureDuringMouseDown

<@&1163218672580575372>.

Images:




Reply by freezfast | 2024-04-27 06:48:44

Hi <@848877255198900269>, are you using ConvaiBaseCharacter? If so, you will find a variavle names Character Id, and this variable also gets set at the beginning in the blueprint. So if it’s empty it might be clearing the one you are setting manually

Replying to freezfast’s Message

Reply by freezfast | 2024-04-27 06:48:44
Hi <@848877255198900269>, are you using ConvaiBaseCharacter? If so, you will find a variavle names Character Id, and this variable also gets set at the beginning in the blueprint. So if it’s empty it might be clearing the one you are setting manually

Reply by fdorike | 2024-04-27 07:37:28

Yes, I had specified ConvaiBaseCharacter as the parent class.
The ConvaiBaseCharacter class has a Char ID field, but it remains empty.
In the details of ConvaiBaseCharacter, there’s a field called Convai Info, which also contains a Char ID field. Additionally, the ConvaiChatbot Component of ConvaiBaseCharacter has its own Char ID field.
Furthermore, child class also possess a Char ID field.
Altogether, there are four Char ID fields, but I’m unsure which one(s) should be filled."

Reply by freezfast | 2024-04-27 07:39:53

They’re all the same character ID, the main one is the one that exists on the component. However, for ease of use we made another charceter ID variable on the ConvaiBaseCharacter blueprint which sets the value on the component at begin play

Replying to freezfast’s Message

Reply by freezfast | 2024-04-27 07:39:53
They’re all the same character ID, the main one is the one that exists on the component. However, for ease of use we made another charceter ID variable on the ConvaiBaseCharacter blueprint which sets the value on the component at begin play

Reply by fdorike | 2024-04-28 03:25:19

I’ve assigned the ID to the ‘Char ID’ variable of the ConvaiBaseCharacter class and the ‘Character ID’ variable of its associated Convai chatbot.
Additionally, I’ve assigned the ID to the ‘Char ID’ variable of the child class and the ‘Character ID’ variable of its associated Convai chatbot.
However, I encounter an error.
Which variable is being checked?

Images:


Reply by fdorike | 2024-04-28 03:39:31

Is there an issue with the variables being passed to the Convai Update Character function? I’m passing the ‘Character ID’ variable from the convai chatbot of the child class.
This problem is always an error that occurs after the Convai Update Character function is executed.

Images:

Replying to freezfast’s Message

Reply by freezfast | 2024-04-27 07:39:53
They’re all the same character ID, the main one is the one that exists on the component. However, for ease of use we made another charceter ID variable on the ConvaiBaseCharacter blueprint which sets the value on the component at begin play

Reply by fdorike | 2024-05-04 01:04:38

So far, setting the ID in the Character ID variable after the update(Convai Update Character fuction) has eliminated the error.
I don’t know if this is a bug, a specification, or an issue dependent on my environment, but this is how I am dealing with it now.
I will report back if the error occurs again.

Reply by freezfast | 2024-05-04 05:56:59

Thank you <@848877255198900269>, we’re still looking into replicating the same issue you had, but great that you found a workaround

This conversation happened on the Convai Discord Server, so this post will be closed.