If I'm right then to call the event of another contract, I need to configure the permissions (allow the call). For example, I have contract aliceclass:
class aliceclass : public contract
{
public:
aliceclass(account_name self) : contract(self){}
/// @abi action
void callbobact(){
//call the Nikita contract method
...
}
};
EOSIO_ABI(aliceclass, (callbobact))
I have contract bobclass:
class bobclass : public contract
{
public:
bobclass(account_name self) : contract(self){}
/// @abi action
void bobact(){
print("Hello world!");
}
};
EOSIO_ABI(bobclass, (bobact))
I create two accounts alice
and bob
, deploy aliceclass
with alice
account and bobclass
with bob
account. When I try to implement callbobact
like this:
action(
permission_level{_self , N(active)},
N(bob),
N(bobact),
std::make_tuple()
).send();
When I call action callbobact
authentication error occurs.
How to configure permissions for bob
and alice
? Do I need to use a multisig for this?
bobact()
and therefore an argument tostd::make_tuple()
too