Sunday, 1 September 2019

Hurray, SUGUAE Completed Three Years!

Hello #Sitecore Heroes!

Did you know SUGUAE is the FIRST-EVER Sitecore User Group in this region?

Yes, SUGUAE journey was started back in 2016 and there were 20+ amazing Sitecore sessions delivered by Internationally Exposed Sitecore veteran speakers.

SUGUAE has completed three successful years of existence and we are totally mesmerized by the trust and interest you people have shown to us.




It's been now three years and I still remember these pictures taken back in Nov, 2016 during our first year's Sitecore User Group Event at The Shades, Address Dubai.


It gave us the confidence to do better in every session and we tried doing more better than our previous effort just to make sure that trust bond remains the same between you and us!

It is a journey that started with very few but now you all are part of this. Thanks for being there with us, it really means a lot.

Thank you to all speakers for delivering those amazing sessions and thank you very much to all attendees to invest your time and showing interest to join all those action packed Sitecore sessions!

Stay tuned with us on our official website @ http://suguae.net/ and follow us on Facebook and Twitter for upcoming #Sitecore sessions.

Once again thank you very much for showing your interest in Sitecore User Group UAE! 

Wednesday, 5 June 2019

5 Tips Before You Appear For Sitecore Interview!

Friends - in this changing world, technology and tools are changing day by day likewise interview method is also changing.


When you appear for an interview, you may think that you have tough job and interviewer has very relaxing job. But it's not like that, in-fact interviewer has to make sure that he selects the right candidate. Interviewer needs to focus on many other parameters apart from technical knowledge of a candidate such as:

- How is candidate's attitude?
- How is candidate's problem solving skills?
- How is candidate's fundamental knowledge of Sitecore?
- Does candidate know about the company where he is applying for job?
- How does candidate behave in some conflicting situation with team of customer?

But many times candidates only focus on preparing technical part of interview and ignore above mentioned parameters. As a result, a technically sound candidate sometimes get disqualified due to lack of preparation in such parameters.



Hence it is highly recommended to think about these points before you appear for an interview and I am sure this video will help you to impress the interviewer.

Have a Happy Interview!

Friday, 25 January 2019

Sitecore ERROR : Exception When Executing Agent Aggregation

Are you facing below mentioned xConnect error? Not able to find out the possible cause and fix?



Well, one of my colleague was struggling with this error on Processing Server. Log files were full of below mentioned error.

8556 13:04:06 ERROR Exception when executing agent aggregation/aggregator Exception: Sitecore.XConnect.XdbCollectionUnavailableException Message: An error occurred while sending the request. Source: Sitecore.XConnect.Client at Sitecore.XConnect.Client.WebApi.CollectionBatchWebApiClient.<ExecuteBatch>d__11.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.XConnect.Client.Operations.HttpOperationInvoker.<Execute>d__8.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.XConnect.XdbContext.<ExecuteBatchAsyncInternal>d__79.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at Sitecore.XConnect.XdbContext.<ExecuteBatchAsyncInternal>d__79.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.XConnect.XdbContext.<ExecuteAsync>d__72.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.XConnect.XdbContext.<GetAsync>d__35`1.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Analytics.Processing.AsyncPoolScheduler`2.<TryGetNextAsync>d__14.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Analytics.Aggregation.InteractionAggregationAgent.<ExecuteCoreAsync>d__15.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Analytics.Core.Agent.<ExecuteAsync>d__1.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Analytics.Core.AsyncBackgroundService.<ExecuteAgentAsync>d__22.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Analytics.Core.AsyncBackgroundService.<RunAsync>d__26.MoveNext() Nested Exception Exception: Sitecore.Xdb.Common.Web.ConnectionTimeoutException Message: A task was canceled. Source: Sitecore.Xdb.Common.Web at Sitecore.Xdb.Common.Web.CommonWebApiClient`1.<ExecuteAsync>d__37.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.XConnect.Client.WebApi.CollectionBatchWebApiClient.<ExecuteBatch>d__11.MoveNext() Nested Exception Exception: System.Threading.Tasks.TaskCanceledException Message: A task was canceled. Source: mscorlib at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Sitecore.Xdb.Common.Web.CommonWebApiClient`1.<ExecuteAsync>d__37.MoveNext() 

This seems Scaling issue as the error was now completely disappeared after scaling up. So try scaling up your instance to get rid of such issue. Thanks to my colleague Thom for sharing this resoultion!

Let me know if you find any other resolution.

Friday, 11 January 2019

A Tip To Install Sitecore Package Faster!

Are you installing large Sitecore package? It could be update or any other Sitecore package. Is it taking a long time to install?



Then you can follow this tip to make installer 3 times faster.

Tip:
For time being, go and disable ContentSearch event handler in "packageinstall:items:ended"



Please note that installed items will not be indexed automatically as we have disabled above settings. So you are advised to do manual indexing once package is installed and revert above changes by enabling ContentSearch event handler.

Please note that this tip is also shared by someone on twitter and I am just documenting it to spread this tip to others because sharing is caring.

Monday, 31 December 2018

Flashback 2018: My Sitecore Journey

Well, 2018 was one of the fantastic years in my Sitecore Journey. I know I haven't written many blogs posts during this year and was heavily involved on ground work.

It's always a good idea to look back and pen down all gain & loss of the year. This will give you a clear picture about your last year actions and will certainly help you to set your next year's goals. By keeping this in my mind, I am inspired to share my 2018 journey with you, my friends.



2018 - Year in Review

Here are few highlights:
  • 22 Sitecore Implementation Review
  • 10+ Sitecore Training Delivered
  • 20+ Happy Sitecore customer engagement
  • 7 Onsite customer visit/training
  • 7 Sitecore User Group Event held via SUGUAE
  • Sitecore 9 Certification
  • Participated in Guru Bar at Sitecore Symposium
  • Sitecore Commerce Certification
  • Participated in one of the tough jobs of reviewing Sitecore MVP application

And last but not least, completed yet another fruitful year while working with Sitecore! This doesn't mean that I haven't faced any loss in this 2018 year. I faced many personal challenges in this 2018 year and have learned many lessons out of that. 

I wish you all a very Happy & Healthy New Year. 
May God Fulfil all your dreams in this new year 2019!

Looking forward to 2019 with many hopes...

Wednesday, 29 August 2018

Are you getting "No Service Error" while connecting through Sitecore Rocks?

If you are working with Sitecore Rocks and trying to connect Sitecore Rocks with your Sitecore project in Visual Studio then there are some chances to spot No Service Error shown in below screen-shot.


Solution:
Well, there is simple solution. Go to your Sitecore Webroot folder and open Web.config file


Remove <deny> tag from Web.config file for <location path="sitecore/shell"> tag only.


That's it!

Now try to connect again with Sitecore Rocks and you should have connection success.



In case, you are still getting connection error, then it is advised to close Visual Studio project and open again and try.

Hope this may help someone!

Thursday, 2 August 2018

Is You Custom SMTP Connection Not Working in Sitecore EXM?

Most of times you follow Sitecore official documentation or community blog posts to use several features of Sitecore. But even-though after following all instructions very carefully, you end up in a unpleasant situation where the configured feature/functionality is not working.

So are you in same situation where you tried to configure Sitecore Email Experience Manager (EXM) with custom SMTP connection but still you are facing error in Test Connection?



First of all check the logs in Eds.* file to get more details where exactly the connection problem is.


In my case, below lines in log file were game changer. It gave me instant strike that my gmail account is configured for second step verification hence I was not able to connect Sitecore EXM with my custom gmail SMTP details. This could be a case with you also and that's why I wrote this post - to help you friends who caught in the same boat.

readSmtpResponse:
SmtpCmdResp: 534-5.7.9 Application-specific password required. Learn more at
SmtpCmdResp: 534 5.7.9  https://support.google.com/mail/?p=InvalidSecondFactor a5- v6sm1673474wmf.3 - gsmtp

So how to fix this? You would say remove second factor verification from Gmail, right? 
Well, we developer always do everything to allow our application to run :), isn't it? No, we are not going to remove second step verification from Gmail and will fix the connection issue instead.

Here are the steps:
1. Login to your Gmail account
2. Navigate to https://security.google.com/settings/security/apppasswords
3. In 'select app' choose 'custom', give it an random name and press generate button
4. It will generate 16 chars token.


Now copy that 16 character token and replace it with your "password" under SMTP \App_Config\Sitecore\EmailExperience\Sitecore.EDS.Providers.CustomSMTP.config file



That's it, try to test EXM connection and it should work now.